home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / geos-archive / GEOS-D64 / GeoThek Spezial (19xx)(-)(de)[gt519b].d64 / gp kAP 6.01-16.usr (.txt) next >
GEOS ConVerT  |  2019-04-13  |  25KB  |  344 lines

  1. GP Kap: 6.01-16
  2. PRG formatted GEOS file V1.0
  3. Write Image V2.1
  4. geoWrite    V2.1
  5. @Kapitel 6:   geoLinker Erl{uterungen
  6. Kapitel 6 enth{lt die komplette Erl{uterung des geoLinker, inklusive geoLinker Kommando-File. Sie sollten das Kapitel zuerst komplett durchlesen. Informationen wie man geoLinker vom Desktop aus benutzt finden sie im Kapitel 4 "running geoLinker".
  7. @Der Link Proze~
  8. geoAssembler generiert .rel (verschiebare Object) Files die aus drei Hauptelementen bestehen:
  9.     o verschiebbaren 6502 Maschinencode
  10.     o nicht aufgel|ste Ausdr}cke
  11.     o globale Labels und Wertzuweisungen
  12. geoLinker nimmt ein oder mehrere Files und konvertiert sie zu einer ablauff{higen Anwendung.
  13. Wenn geoAssembler auf ein undefiniertes Symbol trifft, ein Symbol das im laufenden Quellfile noch nicht definiert wurde, wird ein externes Symbol unterstellt. G}ltige Ausdr}cke die externe Symbole benutzen werden dem geoLinker zum Aufl|sen }bergeben.
  14. Wenn sie mehrere .rel Files zusammen linken, }bergibt geoLinker externe Verweise von einem File mit globalen Symbolen  in anderen Files, dabei werden alle erlaubten Querverweise aufgel|st.
  15. Im Link-Proze~ etabliert geoLinker ebenfalls festgelegte absolute Adressen f}r den Programm-Code-Bereich (.
  16. @psect
  17. ) und nicht initialisierte Space-Bereiche (.
  18. @ramsect
  19. ). Dann wird aller aufl|sbarer Maschinencode in absoluten Maschinencode umgewandelt, der unter GEOS ablauff{hig ist.
  20. Wenn geoLinker in der Lage ist alle externen Verweise aufzul|sen, erstellt er ein lauff{higes Anwendungs-File, komplett mit einem ordentlichen GEOS Header Block, einer .dbg Symboltabelle die unter dem geoDebugger benutzt werden kann und einer optionalen .sym sichtbaren Symboltabelle.
  21. HLinker ]berblick
  22. Command File
  23. geoLinker ben|tigt viele Informationen um mehrere .rel Files in eine GEOS Anwendung umzuwandeln. Neben den verkn}pfbaren (linkable) Modulen die sie festlegen, k|nnen sie einen Ausgabe Filenamen, einen nutzbaren GEOS Header, absolute psect und ramsect Adressen, sogar nachladbare VLIR-Module k|nnen sie anlegen. Alle diese Informationen werden in einem 'linker command files' festgelegt. geoAssembler Quellfiles, werden  wie 'linker command files' unter GEOS entwickelt.
  24. @Sequentielle und Vlir Anwendungen
  25. geoLinker kann sowohl sequentielle als auch VLIR-Anwendungen entwickeln. Sequentielle Anwendungen bestehen aus einem zusammenh{ngenden Hauptmodul, welches beim Starten komplett in den Speicher geladen wird. Vlir (Index-Datei mit variabler L{nge) Anwendungen bestehen aus einem Modul das sich im Speicher befindet, einem sequentiellen File sehr {hnlich, welches geladen wird, wenn sie die Anwendung starten und mehreren nachladbaren Modulen. Modulen die bei Bedarf in den Speicher geladen werden.
  26. @Standard Commodore Anwendung
  27. geoLinker kann, mit der 
  28. @.cbm 
  29. Anweisung, auch 'standard commodore Anwendungen' verarbeiten die ohne GEOS lauff{hig sind. Eine 'standard commodore Anwendung' ist genauso, wie eine sequentielle GEOS Anwendung aufgebaut, nur ohne File-Header. Weiter Informationen }ber 'standard commodore Anwendung' finden sie im 'Commodore 64 Programmers Reference Guide'.
  30. @Header und Ausgabe File
  31. Mit geoLinker k|nnen sie einen GEOS File Header erstellen und ein Ausgabe-File im 'Linker Kommando File'. Wenn sie nur eines oder keines erstellen, verwendet geoLinker einen Vorgabewert. Der Vorgabe Header benutzt ein festgelegtes Test Icon mit Lade- und Startadresse die auf das erste Byte im psect Bereich zeigt. Der vorgegebene Filename ist 
  32. @test.
  33. Psect und Ramsect Adressen
  34. Alle psect und die meisten ramsect Bereiche sind verschiebbar - ihnen werden absolute Adressen im Commodore-Speicher beim linken zugewiesen. Wenn sie keine psect Adresse festlegen setzt geoLinker den Vorgabewert $400 ein. Legen sie keine spezielle ramsect Adresse fest, f}gt geoLinker den ramsect Bereich nach dem letzten Byte ihres psect Bereichs ein (oder Modul bei einer Vlir Anwendung).
  35. @Linker Kommando File
  36. Jede Linkoperation mu~ ein 'linker command file' benutzen. 'linker command files' werden unter geoWrite erstellt und entsprechen geoAssembler Quellfiles - sie bestehen aus Linkeranweisungen, Filenamen und Kommentaren.
  37. geoWrite nutzen zum Erstellen von 'linker command file'
  38. geoLinker 'command files' m}ssen im geoWrite Format sein. Sie erstellen sie genauso, wie sie geoAssembler Quellcode erstellen. Mehr Informationen }ber die Anwendung von geoWrite finden sie im kapitel 4 'Creating geoAssembler Source Code' und im geoWrite Kapitel ihres GEOS User's Guide.
  39. Achtung: Ein 'linker command file' darf max. eine geoWrite Seite lang sein. Jeder dar}ber hinausgehende Text wird }berlesen.
  40. Kommentare
  41. Wie in geoAssembler, k|nnen sie in ihrem 'linker command file', Kommentare mit einem Semikolon (;) einf}gen. geoLinker }berliest den Text vom Semikolon bis zum Zeilenende. Ist das Semikolon nicht das erste Zeichen in der Zeile, mu~ wenigstens ein Leerzeichen vorangestellt werden.
  42. Anweisungen
  43. geoLinker beinhaltet einige Anweisungen mit deren Hilfe k|nnen sie einige Funktionen kontorllieren und ausw{hlen:
  44. .output    bestimmt output Filename
  45. .header    bestimmt header .rel Filename
  46. .psect    legt absolute psect Adresse fest
  47. .ramsect    legt absolute ramsect Adresse fest
  48. .seq    sequentieller Anwendungs-Linker
  49. .vlir    VLIR Anwendungs-Linker
  50. .mod    Beginn des VLIR Nachlade-Files
  51. Standard Commodore
  52. Anwendungs-Linker
  53. Linkeranweisungen unterscheiden nicht zwischen Gro~- und Kleinschreibung. Sie k|nnen sie in Gro~- oder Kleinbuchstaben oder gemischt eintippen.
  54. Filenamen
  55. Wenn ein Element oder eine Zeile, weder ein Kommentar noch eine Anweisung ist, bewertet geoLinker es als .rel verschiebbares Objekt-File. Linkbare Files werden durch folgende Anweisungen in den Zeilen gekennzeichnet, 
  56. @.seq, .vlir, .mod, 
  57. oder 
  58. @.cbm. 
  59. Sie ben|tigen keine bestimmte Syntax, es ist jedoch nur ein Filename je Zeile erlaubt ist. Bei Filenamen wird zwischen Gro~- und Kleinschreibung unterschieden.
  60. Wenn sie zwei Floppies haben (eine kann eine REU sein), sucht geoLinker auf beiden nach dem gew}nschten File, er beginnt dabei mit der Floppy auf der sich das 'linker comand file' befindet.
  61. @Ausdr}cke
  62. geoLinker benutzt denselben Editor wie geoAssembler. Dadurch k|nnen sie in ihrem 'linker comand file' dieselben Ausdrucks-Arten verwenden, wie in ihrem Assembler Quellcode. Sie k|nnen sogar Ausdr}cke verwenden, die Symbolzuweisungen im Assembler-File enthalten.
  63. zum Beipiel wollen sie anstatt
  64. @.ramsect $4100
  65. lieber folgenden Ausdruck benutzen
  66. @.ramsect buffer-start+100
  67. Dies ist erlaubt, vorausgesetzt, sie weisen 
  68. @buffer-start 
  69. in einem der .rel Files einen Wert zu. Mehr Informationen }ber den Editor finden sie im Kapitel 5 unter 'Expressions'.
  70. @Sequentielle Anwendung Linker
  71. Eine sequentielle Anwendung benutzt ein 'linker command file' das nach folgendem Basismuster aufgebaut ist:
  72.           
  73. (siehe Kapitel 6-4)
  74. Pfilename
  75.  frei w{hlbarer Name und 
  76. Paddrexp
  77.  ist ein Ausduck dem beim Auswerten eine absolute Adresse im Commodore Speicher zugewiesen wird. Die meisten Ausdr}cke sind optional, dies wird durch die eckigen Klammern angezeigt. Das einfachste 'linker command file', das alle Vorgaben benutzt, sieht so aus:
  78. @.seq
  79. Pfilename
  80. @.rel
  81. Damit wird ein .rel File in eine sequentielle Anwendung gelinkt. Es werden der Vorgabe Header, die Vorgabe Adressen und der vorgegebene Filename benutzt. Es folgt ein Beispiel f}r ein umfangreiches sequentielles Quellfile:
  82.         
  83. (Seite 6-5)
  84. Dieses 'linker command file' generiert eine sequentielle Anwendung die 
  85. @myprogrammm 
  86. genannt wird, den Header 
  87. @myheader.rel 
  88. benutzt und die Files 
  89. @myinit.rel, mymain.rel, mydata.rel 
  90. @ mytable.rel 
  91. assembliert. Die .rel Files werden verschoben und miteinander verbunden, eines nach dem anderen, in der Reihenfolge wie sie im 'linker command file' aufgef}hrt sind. Das Programm enth{lt eine absolute Adresse bei 
  92. @prg-addr$42E 
  93. @prg-addr 
  94. mu~ in einem der .rel Files einen Wert zugwiesen bekommen) und die absloute ramsect Adresse $3000.
  95. @VLIR- und LinkAnwendung 
  96. Eine VLIR-Anwendung ben|tigt ein umfangreiches 'linker command file', um die nachlabaren Module zu verwalten. Das 'linker command file' f}r eine Vlir Anwendung hat folgendes Muster:
  97. Beispiel:
  98. (Seite 6-5)
  99. Obwohl ein VLIR 'linker command file' einem sequentiellen 'linker command file' gleicht, werden sie gleich die zus{tzliche .
  100.  Nachlade-Modul Anweisung bemerken. Es hilft ihnen wenn sie sich bei einer VLIR-Anwendung eine Reihe von sequentiellen Files vorstellen die, die zu einem Programm-File zusammengef}gt werden. Dem residenten (im Speicher befindlichen) Hauptmodul folgt die .
  101. @vlir
  102.  Anweisung. Sie kann ihren eigenen .
  103. @psect
  104.  und .
  105. @ramsect 
  106. haben und besteht aus einem oder mehreren .rel Files. Jedes Nachlade-Modul hat seinen eigenen .
  107. @psect
  108.  und .
  109. @ramsect, 
  110. zus{tzlich zu seinem .rel Files Teil.
  111.    Beispiel:
  112. (Seite 6-6)
  113. Dieses 'linker command file' generiert eine VLIR-Anwendung mit Namen 
  114. @myvlir
  115. , die den Header 
  116. @vlirhead.rel
  117.  benutzt. Das residente Modul besteht aus 3 Files 
  118. @init.rel,  dispatch.rel
  119.  und 
  120. @menus.rel
  121. . Au~erdem gibt es drei Nachlade-Module, mit den Nummern 1 bis 3, jedes mit einer seiner eigenen absoluten Adresse.
  122. @Aufl|sung
  123. @von Querverweisen
  124. geoLinker hat einige bestimmte Eigenschaften und bestimmte Begrenzungen, die auf die Art der Aufl|sung der Querverweise  Einflu~ nehmen. 
  125. @wie geoLinker Querverweise aufl|st
  126. Assemblieren sie ein File, unterstellt geoAssembler, da~ undefinierte Symbole eines Ausdrucks einen externen Hinweis darstellen und sendet den ganzen, nicht ausgewerteten Ausdruck, an das .rel File. geoLinker versucht dann diesen Ausdruck mit Hilfe der globalen Symbole der anderen .rel Files auszuwerten. 
  127. @Probleme mit globalen Labels
  128. Oft benutzen zwei oder mehr .rel Files f}r Labels und Wortzuweisungen, die keine Beziehung zueinander haben, die gleichen Symbole. Beim Linken dieser Files, trifft geoLinker auf diese problematischen Symbole. Im Idealfall hat der Programmierer vorgesorgt, indem er diese Symbole vom Linken durch .
  129. @noglbl
  130.  und .
  131. @noeqin
  132.  Anweisungen ausgeschlossen hat. Dies ist in der Praxis jedoch selten der Fall. Das Ergebnis ist, da~ beim Linken dauernd neue Werte f}r das globale Label auftauchen. geoLinker, jedoch, zeigt dies nicht als Error f}r Mehrfachzuweisungen an Labels an und unterstellt, da~ dies unbeabsichtigt war, bis ein anderes .rel File auf eines dieser externen Symbole verweist, in diesem Fall wei~ geoLinker nicht welches gemeint ist. Ein Error wird generiert.
  133. Achtung
  134. : Wenn ein Symbol beim Assemblieren aufgel|st werden kann, bleibt es dabei, es wird dann kein externer Verweis generiert. Deshalb hat eine interne Routine eines Objekt-Modules Vorrang, vor einer Routine mit demselben Namen, die aber extern ist.
  135. @VLIR Nachlade-Modul Verweise
  136. Ein VLIR-File hat }blicherweise ein residentes Modul und mehrere Nachlade-Module. geoLinker linkt jedes Modul (ob resident oder nachladbar), als ob es ein vollkommen unabh{ngiges sequentielles File w{re, mit einer Ausnahme: ein Nachlade-Modul verweist auf Symbole im residenten Modul. Das residente Modul kann jedoch nicht auf Symbole im Nachlade Modul zugreifen und ein Nachlade Modul kann nicht auf Symbole in anderen Nachlade Modulen zugreifen. 
  137. Das scheint dem Sinn eines Nachlade-Linkers zu widersprechen. Gl}cklicherweise kann die Begrenzung des Geltungsbereichs von Symbolen }berwunden werden, indem man Sprungtabellen benutzt. Eine VLIR-Sprungtabelle kann am Beginn jedes Nachlade-Moduls eingebaut werden, und dann verwendet man ein Festwerte-File, das in diese Sprungtabelle zeigt. So arbeitet Berkeley Softworks mit Nachlade-Modulen in ihren VLIR-Anwendung. (Das Beispiel f}r eine Nachlade Sprungtabelle, finden sie als sample Vlir Anwendung auf ihrer geoProgrammer Diskette.)
  138. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
  139. @Referenz Linkanweisungen
  140. Anweisung:    
  141. @.output
  142. Zweck:    legt den Namen eines Output-Files f}r     eine Anwendung     fest und einen Basis-File-Name f}r seine
  143.     .sym, .dbg und .err Files
  144. Anwendung:    
  145. @.output 
  146. Pfilename
  147. Beachten sie: 
  148. Pfilename
  149.  ist ein wahlfreier zul{ssiger Name
  150. @.output 
  151. Anweisung erlaubt ihnen einen Output-File-Namen festzulegen, in irgendeinem File, das geoLinker beim aktuellen Linkervorgang generiert. Wenn sie keine 
  152. @.output 
  153. Anweisung verwenden, benutzt geoLinker den Namen 
  154. @test
  155. . Sie sollten im Filenamen keine Anh{ngsel verwenden, geoLinker f}gt ein zugeh|riges .sym, .dbg oder .err an.
  156. @.output 
  157. File, falls benutzt, mu~ die erste Anweisung im 'linker command file' sein.
  158. Beispiel:
  159.              
  160. @.output myapp
  161. Dies zeigt geoLinker an, da~ es den Namen 
  162. @myapp 
  163. als Namen f}r die gelinkten Anwendung zu benutzen hat und als Basic-File-Name f}r alle angeschlossenen Files (
  164. @myapp.sym, myapp.dbg, myapp.err).
  165. Anweisung:    
  166. @.header
  167. Zweck:    veranla~t, da~ ein vorher assembliertes .rel File benutzt wird, um einen Geos File Header zu
  168.     generieren
  169. Anwendung:     
  170. @.header 
  171. Pfilename
  172. Beachten sie:     
  173. Pfilename
  174.  ist ein wahlfreier zul{ssiger Name
  175. Das Header File mu~ genau 256 Bytes lang sein. Wenn sie den Header mit der header Anweisung entwicklen, werden immer 256 Bytes generiert. Ansonsten m}ssen sie selbst daf}r sorgen, da~ 256 Bytes verwendet werden. Wenn das Header File mehr oder weniger als 256 Bytes enth{lt, wird ein Fehler genriert.
  176. Wenn sie die .
  177. @header
  178.  Anweisung weglassen, wird ein Vorgabe-Header mit den dazugeh|rigen sequentiellen oder Vlir Kennzeichen generiert. Der Vorgabe-Header benutzt eine Lade- und Startadresse die auf das erste Byte des Psect-Speichers (residentes Modul) ihres Codes zeigt. Der Vorgabe-Header kann nicht zum generieren von Desk Hilfsprogrammen benutzt werden.
  179. Die .
  180. @header
  181.  Anweisung mu~ nach jeder .
  182. @output
  183.  Anweisung erscheinen, aber vor der .
  184.  oder .
  185. @vlir
  186.  Anweisung. Vor der .
  187.  Anweisung ist 
  188. @header
  189.  falsch.
  190. Beispiel:
  191. @header   seqhead.rel
  192. Das zeigt dem geoLinker an, da~ er die Data's des 
  193. @ seqhead.rel 
  194. f}r den aP's GEOS File Header benutzen mu~.
  195. Weitere Informationen }ber GEOS File Header finden sie unter 'Header Directives' im kapitel 5 dieses Handbuches. Verwenden sie auch den 
  196. PThe Official GEOS Programmer's Refernce Guide
  197. Anweisung:    
  198. @.psect
  199. Zweck:    erstellt eine absolute Adresse f}r den Programmcode und Databereich (psect) 
  200. Anwendung:    
  201. @.psect 
  202. Paddrexp
  203. Beachten sie:     
  204. Paddrexp
  205.  ist ein Ausdruck der in eine absolute Adresse umgewandelt wird
  206. geoLinker l|st keine absoluten Adressen des Psect Bereichs bis zum Linken auf. Aus diesem Grund k|nnen sie die .
  207. @psect
  208.  Link Anweisung verwenden um absolute Adressen f}r ihren Programmcode und Databereiche festzulegen. Wenn sie die .
  209. @psect
  210.  Anweisung weglassen, benutzt geoLinker den Vorgabewert $400.
  211. Die .psect Anweisung darf nur nach .
  212. @vlir
  213.  oder .
  214.  weggelassen werden und sie mu~ vor dem zugeh|rigen .rel Filenamen erkl{rt werden. Beim Vlir linken, beeinflu~t .psect nur das zuletzt bearbeitete resediente oder nachladbare Modul.
  215. Beispiel:
  216. (Seite 6-10)
  217. Anweisung:    
  218. @.ramsect
  219. Zweck:    erstellt eine absolute Adresse f}r relative nicht initialisierte Databereiche (ramsect) 
  220. Anwendung:    
  221. @.ramsect 
  222. Paddrexp
  223. Beachten sie:     
  224. Paddrexp
  225.  ist ein Ausdruck der in eine absolute Adresse umgewandelt wird
  226. Wenn sie wollen, k|nnen sie geoLinker die absolute Adresse ihres Ramsect Bereichs aufl|sen lassen, indem sie keine absolute Adresse in ihrer geoAssembler .
  227. @ramsect
  228.  Anweisung festlegen. Sie k|nnen die geoLinker .
  229. @ramsect
  230.  Anweisung benutzen um eine absolute Adresse f}r diese Ramsect Bereiche festzulegen. Wenn sie die .
  231. @ramsect
  232.  Anweisung weglassen, f}gt geoLinker ihren Ramsect Bereich automatisch unmittelbar an das Ende des Psect Bereichs an. Wenn ein Vlir Nachlade-Modul kein .
  233. @ramsect
  234.  hat, wird der Ramsect Bereich an den Psect Bereich des Nachlade-Moduls angeh{ngt, nicht an die residenten Module. 
  235. Die .
  236. @ramsect
  237.  Anweisung kann nach den 
  238. @.seq, .vlir, .mod
  239.  oder .
  240.  Anweisungen wegelassen werden. Alle relativen Adressen des Ramsect Bereichs in diesen Modulen werden auf der Basis dieser Adressen erg{nzt und aufgel|st.
  241. Beispiel:
  242. (Seite 6-11)
  243. Anweisung:    
  244. @.seq
  245. Zweck: zeigt geoLinker an da~ dies ein seqentielles File ist und da~ alle folgenden Filenamen in ein residentes Hauptfile gelinkt werden sollen
  246. Anwendung:    
  247. @.seq
  248. Beachten sie:     ben|tigt keine Parameter
  249. Wenn sie eine sequentielle File Anwendung generieren wollen mu~ diese Anweisung vor die .
  250. @psect
  251. @ramsect
  252.  oder linkbaren Files gesetzt werden. geoLinker erstellt dann eine sequentielle Anwendung.
  253. Ein 'linker command file' mu~ schlie~lich eine 
  254. @.seq, .vlir 
  255. oder .
  256.  Anweisung beinhalten, mehr nicht. Die einzigen Anweisungen die vor .
  257.  gesetzt werden d}rfen sind .
  258. @output
  259.  und .
  260. @header
  261. . Die .
  262.  Anweisung darf in Verbindung mit .
  263.  nicht benutzt werden.
  264. Wenn die .
  265. @header
  266.  Anweisung weggelassen wird, generiert geoLinker einen sequentiellen Vorgabe Header.
  267. Beispiel:
  268. (Seite 6-12)
  269. Anweisung:    
  270. @.vlir
  271. Zweck:    zeigt geoLinker an, da~ dies eine VLIR (Indexdatei mit variabler L{nge) Anwendung ist und da~ der
  272.     folgende Teil (bis zur .mod Anweisung) ein residentes Modul ist
  273. Anwendung:    
  274. @.vlir
  275. Beachten sie:      ben|tigt keine Parameter
  276. Wenn sie eine VLIR Anwendung generieren wollen, m}ssen sie die Anweisung vor 
  277. @.psect
  278. @.ramsect
  279. @.mod
  280.  oder linkbaren Filenamen plazieren. Sie zeigt geoLinker an da~ eine VLIR Anwendung generiert werden mu~.
  281. @.psect
  282.  und 
  283. @.ramsect
  284.  Anweisungen f}r die residenten Module m}ssen vor den .rel Filenamen stehen. 
  285. @.psect
  286.  und 
  287. @.ramsect
  288.  Anweisungen die einer 
  289. @.vlir
  290.  Anweisung unmittelbar folgen, beeinflussen keine Nachlade-Module, die mit der 
  291. @.mod
  292.  Anweisung erstellt wurden.
  293. (Seite 6-13)
  294. Anweisung:    
  295. @.mod
  296. Zweck:    Beginn eines Nachlade-Modules
  297. Anwendung:    
  298. @.mod 
  299. Beachten Sie:     
  300.  ist ein Ausdruck der in eine Zahl zwischen 1 und 126 umgewandelt wird
  301. VLIR-Anwendungen haben ein residentes Modul und bis zu 20 Nachlade-Module. Mit der .
  302. @mod 
  303. Anweisung, gefolgt von einer .rel Modul-Nummer (1 bis 126), weisen sie geoLinker an ein neues Nachlade-Modul zu beginnen. Die Modul-Nummer wird die Record-Nummer im Vlir File. Denken sie daran, da~ laden und }berlagern von Nachlade-Modulen eine Funktion ihres Programmes ist; die .
  304.  Anweisung erlaubt ihnen lediglich eine Gruppe von .rel Files zusammen in ein Vlir Record aufzul|sen.
  305. Am Anfang eines Nachlade-Modules, werden die psect und ramsect Z{hler auf ihre Vorgabewerte zur}ckgesetzt. Wenn sie eine .
  306. @psect
  307.  Anweisung benutzen, mu~ sie hinter der .
  308.  Anweisung stehen, aber vor den .rel Files. Wenn .
  309. @psect
  310.  nicht festgelegt wird, }bernimmt geoLinker den Vorgabewert $400; wenn kein .ramsect festgelegt wird, wird der Ramsect Bereich unmittelbar hinter dem letzten Psect Byte des Nachlade-Modules angeh{ngt.
  311. Beachten sie:     Sie k|nnen die Modul-Nummer selbst bestimmen. Sie m}ssen nicht mit 1 beginnen und m}ssen nicht fortlaufend durch- nummerieren. Die einzige Einschr{nkung : die Gesamtzahl der Module 20 nicht }berschreiten darf.
  312. (Seite 6-14)
  313. (Seite 6-15)
  314. Das obige Beispiel generiert eine VLIR-Anwendung mit einem residenten Modul und zwei Nachlade-Modulen, dabei werden alle Vorgabewerte benutzt.
  315. Mehr Informationen }ber die Entwicklung ihrer eigenen Nachlade-Bearbeitungs-Routinen, finden sie in der 
  316. sample
  317.  VLIR-Anwendung auf ihrer geoProgrammer Diskette.
  318. Anweisung:    
  319. @.cbm
  320. Zweck:    zeigt geoLinker an, da~ dies eine Standard Commodore Anwendung ist, d.h. alle folgenden Files
  321.     werden in ein residentes Hauptfile gelinkt 
  322. Anwendung:    
  323. @.cbm
  324. Beachten sie:      ben|tigt keine Parameter
  325. Wollen sie eine Standard-Commodore-Anwendung generieren wollen, mu~ diese Anweisung vor die .
  326. @psect
  327. @ramsect
  328.  oder linkbaren Files gesetzt werden. Sie weist geoLinker an, eine Anwendung zu entwicklen, die anderen Files die von Assemblern entwickelt wurden gleich ist. Eine Standard Commodore Anwendung kann nicht vom GEOS Desktop aus gestartet werden.
  329. Ein 'linker command file' mu~ wenigstens eine 
  330. @.seq, .vlir 
  331. oder .
  332.  Anweisung haben, aber mehr nicht. Die einzigen Anweisungen die vor .
  333.  gesetzt werden d}rfen sind .
  334. @output
  335.  und .
  336. @header
  337. . Die .
  338.  Anweisung darf in Verbindung mit .
  339.  nicht benutzt werden.
  340. geoLinker generiert f}r die Anwendung keinen GEOS File-Header. Wenn sie die Header-Anweisung verwenden wird ein Fehler generiert. Das Icon das am Destop angezeigt wird, zeigt das 
  341. ErkennungsIcon. Wollen sie die Anwendung auch von Desktop starten, k|nnen sie sie mit dem Icon Editor (enthalten im DESK PACK1) ins GEOS-Format konvertieren. Dadurch kann vom Desktop aus auf das File zugegriffen werden, obwohl es dadurch keine GEOS Anwendung wird.
  342. Beispiel:
  343. (Seite 6-16)
  344.